﻿// 3509. 棋盘遍历问题.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

using namespace std;
/*

https://www.acwing.com/problem/content/3512/

给定一个 N×M的方格棋盘，请问一个棋子从棋盘左上角出发，能否在不重复经过棋盘上的方格的情况下，遍历整个棋盘一次再回到起点。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个整数 N,M。

输出格式
每组数据输出一行一个结果，如果能回到起点则输出 Y，否则输出 N。

数据范围
1≤N,M≤10
输入样例：
1 2
2 2
输出样例：
N
Y
*/

int n, m;

int main() {

    while (cin >> n >> m) {
        if (n == 1 && m == 1) cout << "Y";
        else if (n % 2 == 0 || m % 2 == 0) cout << "Y";
        else cout << "N";
        cout << endl;
    }
    return 0;
}